package com.budwk.app.miniapp.models;

import com.budwk.starter.common.openapi.annotation.ApiModelProperty;
import com.budwk.starter.database.model.BaseModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.nutz.dao.entity.annotation.*;

import java.io.Serializable;
import java.util.Date;

/**
 * 事件上传上报对象 wx_event_attest
 *
 * @author dfxy
 * @date 2023-02-21
 */
@EqualsAndHashCode(callSuper = true)
@Data
@Table("wx_event_attest")
public class WxEventAttest extends BaseModel implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    @Id
    @Column
    @Comment("id")
    @ApiModelProperty(description = "id")
    @ColDefine(type = ColType.INT, width = 64)
    private Long id;

    /**
     * 事件id
     */
    @Column("event_id")
    @Comment("事件id")
    @ApiModelProperty(description = "事件id")
    @ColDefine(type = ColType.INT, width = 64)
    private Long eventId;

    /**
     * 上报人id
     */
    @Column
    @Comment("上报人id")
    @ApiModelProperty(description = "上报人id")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private String openid;

    /**
     * 上报人姓名
     */
    @Column("user_name")
    @Comment("上报人姓名")
    @ApiModelProperty(description = "上报人姓名")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private String userName;

    /**
     * 纬度
     */
    @Column("latitude")
    @Comment("纬度")
    @ApiModelProperty(description = "纬度")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private Double latitude;

    /**
     * 经度
     */
    @Column("longitude")
    @Comment("经度")
    @ApiModelProperty(description = "经度")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private Double longitude;

    /**
     * 详细地址
     */
    @Column("address")
    @Comment("详细地址")
    @ApiModelProperty(description = "详细地址")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private String address;

    /**
     * 上报类型
     */
    @Column("report_type")
    @Comment("上报类型")
    @ApiModelProperty(description = "上报类型")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private String reportType;

    /**
     * 创建时间
     */
    @Column("create_time")
    @Comment("创建时间")
    @ApiModelProperty(description = "创建时间")
    @ColDefine(type = ColType.TIMESTAMP, width = 6)
    private Date createTime;

    /**
     * 图片地址
     */
    @Column("picture_url")
    @Comment("图片地址")
    @ApiModelProperty(description = "图片地址")
    @ColDefine(type = ColType.VARCHAR, width = 500)
    private String pictureUrl;

    /**
     * 上报内容
     */
    @Column("report_content")
    @Comment("图片地址")
    @ApiModelProperty(description = "图片地址")
    @ColDefine(type = ColType.VARCHAR, width = 500)
    private String reportContent;

    /**
     * 备注
     */
    @Column("remark")
    @Comment("图片地址")
    @ApiModelProperty(description = "图片地址")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private String remark;

    /**
     * 与事发地距离
     */
    @Column("event_distance")
    @Comment("与事发地距离")
    @ApiModelProperty(description = "与事发地距离")
    @ColDefine(type = ColType.FLOAT, width = 53)
    private Double eventDistance;
}
